home *** CD-ROM | disk | FTP | other *** search
Text File | 1994-04-19 | 4.8 KB | 201 lines | [TEXT/MPS ] |
-
- /*
- * This file was generated by the SOM Compiler.
- * FileName: Locrian:WWDCSun:CPlusPlus:Storage.xh.
- * Generated using:
- * SOM Precompiler somipc: somc/smemit.c
- * SOM Emitter emitxh.dll: somc/smmain.c
- */
-
- /*
- *
- * Classes defined in this interface
- *
- */
-
-
- #ifndef SOM_ODStorageSystem_xh
- #define SOM_ODStorageSystem_xh
-
- class ODStorageSystem;
-
- #define ODStorageSystem_MajorVersion 0
- #define ODStorageSystem_MinorVersion 0
-
- /* C++ som defs */
- #include <somcls.xh>
-
- /* Include C++ parent defs */
- #ifndef SOM_ODObject_xh
- #include <ODObject.xh>
- #endif
-
- #ifndef ODStorageSystem_API
- #define ODStorageSystem_API
- /*
- * -- The Class API
- */
-
- /*
- * Start of user-defined types:
- */
- class ODExtension;
- class ODBaseSession;
- class ODContainer;
-
- /*
- * End of user-defined types.
- */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export on
- #endif
-
-
- /* A procedure to create the ODStorageSystem Class */
- SOMEXTERN SOMClass * SOMLINK ODStorageSystemNewClass(
- integer4 majorVersion,
- integer4 minorVersion);
-
- /* The API to the ODStorageSystem class object, and the methods it introduces. */
- typedef struct ODStorageSystemClassDataStructure {
- SOMClass *classObject;
- somMToken InitStorageSystem;
- somMToken GetSession;
- somMToken GetContainer;
- somMToken CreateContainer;
- somMToken NeedSpace;
- somMToken GrowHeap;
- somMToken ReleaseContainer;
- somMToken GetContainerSuite;
- somMToken GetHeap;
- somMToken GetCMSession;
- somMToken SetCMSession;
- } ODStorageSystemClassDataStructure;
- #ifdef SOM_NO_DATA_EXPORTS
- SOMEXTERN ODStorageSystemClassDataStructure * ODStorageSystemGetClassData ( void );
- # undef ODStorageSystemClassData
- # define ODStorageSystemClassData (*ODStorageSystemGetClassData())
- #else
- SOMEXTERN ODStorageSystemClassDataStructure ODStorageSystemClassData;
- #endif /* SOM_NO_DATA_EXPORTS */
-
- #if applec ^ PRAGMA_LIB_EXPORT
- #pragma lib_export off
- #endif
-
- #define _ODStorageSystem ODStorageSystemClassData.classObject
-
- /* The API to parentMtabs for ODStorageSystem, and the instance data it introduces. */
- SOMEXTERN struct ODStorageSystemCClassDataStructure {
- somMethodTabs parentMtab;
- somDToken instanceDataToken;
- } ODStorageSystemCClassData;
-
- /*
- * -- Typedefs for Procedures that support Methods introduced by ODStorageSystem
- */
- SOMEXTERN {
- typedef void (* SOMLINK somTD_ODStorageSystem_InitStorageSystem)(ODStorageSystem *somSelf, Environment *ev,
- ODBaseSession* session,
- ODHeap heap);
- typedef ODBaseSession* (* SOMLINK somTD_ODStorageSystem_GetSession)(ODStorageSystem *somSelf, Environment *ev);
- typedef ODContainer* (* SOMLINK somTD_ODStorageSystem_GetContainer)(ODStorageSystem *somSelf, Environment *ev,
- ODContainerType containerType,
- ODContainerID id);
- typedef ODContainer* (* SOMLINK somTD_ODStorageSystem_CreateContainer)(ODStorageSystem *somSelf, Environment *ev,
- ODContainerType containerType,
- ODContainerID id);
- typedef void (* SOMLINK somTD_ODStorageSystem_NeedSpace)(ODStorageSystem *somSelf, Environment *ev,
- ODSize memSize,
- ODBoolean doPurge);
- }
-
- #endif /* ODStorageSystem_API */
-
-
- /*
- * -- Method Tokens are Thunks
- */
- #undef somresolve_
- #define somresolve_(obj,mToken) ((somMethodProc*)((void)obj, mToken))
-
- /*
- * -- The C++ Wrapper Class for ODStorageSystem
- */
- class ODStorageSystem : public ODObject
- {
- public:
-
- void *operator new(size_t size)
- {
- SOM_IgnoreWarning(size);
- if (!ODStorageSystemClassData.classObject)
- ODStorageSystemNewClass(ODStorageSystem_MajorVersion,ODStorageSystem_MinorVersion);
- return (void *)
- ((somTD_SOMClass_somNew)
- somresolve_((SOMObject *)((void*)(ODStorageSystemClassData.classObject)),
- SOMClassClassData.somNew))
- ((SOMClass *)((void*)(ODStorageSystemClassData.classObject)));
- }
-
- void operator delete(void * obj)
- {
- ((SOMObject *)obj)->somFree();
- }
-
- /* public method: InitStorageSystem */
- void InitStorageSystem(Environment *ev,
- ODBaseSession* session,
- ODHeap heap)
- {
- SOM_Resolve(this,ODStorageSystem,InitStorageSystem)
- (this,ev,session,heap);
- }
-
-
- /* public method: GetSession */
- ODBaseSession* GetSession(Environment *ev)
- {
- return SOM_Resolve(this,ODStorageSystem,GetSession)
- (this,ev);
- }
-
-
- /* public method: GetContainer */
- ODContainer* GetContainer(Environment *ev,
- ODContainerType containerType,
- ODContainerID id)
- {
- return SOM_Resolve(this,ODStorageSystem,GetContainer)
- (this,ev,containerType,id);
- }
-
-
- /* public method: CreateContainer */
- ODContainer* CreateContainer(Environment *ev,
- ODContainerType containerType,
- ODContainerID id)
- {
- return SOM_Resolve(this,ODStorageSystem,CreateContainer)
- (this,ev,containerType,id);
- }
-
-
- /* public method: NeedSpace */
- void NeedSpace(Environment *ev,
- ODSize memSize,
- ODBoolean doPurge)
- {
- SOM_Resolve(this,ODStorageSystem,NeedSpace)
- (this,ev,memSize,doPurge);
- }
-
-
-
- }; /* ODStorageSystem */
-
-
-
- #endif /* SOM_ODStorageSystem_xh */
-